
package com.carsite.dao;

import java.util.List;

import com.carsite.dao.Dao;
import com.carsite.model.Order;

public interface OrderDao extends Dao {

    /**
     * Retrieves all of the orders
     */
    public List getOrders(Order order);

    /**
     * Gets order's information based on primary key. An
     * ObjectRetrievalFailureException Runtime Exception is thrown if 
     * nothing is found.
     * 
     * @param orderId the order's orderId
     * @return order populated order object
     */
    public Order getOrder(final Long orderId);

    /**
     * Saves a order's information
     * @param order the object to be saved
     */    
    public void saveOrder(Order order);

    /**
     * Removes a order from the database by orderId
     * @param orderId the order's orderId
     */
    public void removeOrder(final Long orderId);
}

